Advances in technology have resulted in smaller and more powerful personal computing devices. For example, there currently exist a variety of portable personal computing devices, including wireless computing devices, such as portable wireless telephones, personal digital assistants (PDAs) and paging devices that are each small, lightweight, and can be easily carried by users. More specifically, the portable wireless telephones, for example, further include cellular telephones that communicate voice and data packets over wireless networks. Further, many such cellular telephones are being manufactured with relatively large increases in computing capabilities, and as such, are becoming tantamount to small personal computers and hand-held PDAs. However, these smaller and more powerful personal computing devices are typically severely resource constrained. For example, the screen size, amount of available memory and file system space, amount of input and output capabilities and processing capability may each be limited by the small size of the device. Because of such severe resource constraints, it is often typically desirable, for example, to maintain a limited size and quantity of software applications and other information residing on such remote personal computing devices, e.g., client devices.
FIG. 1 depicts a prior approach to such application execution on a wireless device in order to route data files between wireless devices 100, 102 connected to a communication network 104, e.g., a code division multiple access (CDMA) network, a general packet radio service (GPRS) network, a universal mobile telecommunications system (UMTS) network, or other network. As depicted, data file communication between wireless devices 100, 102 prior to the present embodiments requires the use of a multimedia server (MMS) 108, also connected with communication network 104, in order to distribute the data files from one wireless device to another wireless device.
FIG. 2 depicts operation of FIG. 1 in the form of a message sequence diagram. Specifically, originating wireless device 100 establishes a data call connection with communication network 104 (sequence steps 21, 22, 23) and then transmits the data file to the MMS 108 (sequence step 24), which may include an indication of the destination, i.e., wireless device 102. After receipt of the data file from wireless device 100, MMS 108 notifies destination wireless device 102 of the presence of the data file on the MMS by way of a short message service (SMS) message (sequence step 25), for example.
After receipt of the SMS message from MMS 108, wireless device 102 establishes a data call connection with communication network 104 (sequence steps 26, 27, 28). After establishing the data call connection, wireless device 102 downloads the data file from MMS 108 (sequence step 29). After completing download of the data file, wireless device 102 transmits an acknowledgement (sequence step 30) to MMS 108. In response, MMS 108 transmits an acknowledgement (sequence step 31) to wireless device 100 thereby indicating transmission of the data file to the specified destination, i.e., wireless device 102.
As described, transmission of the data file from wireless device 100 to wireless device 102 requires the use of a multimedia server 108 for storage and retransmission of the data file. By following this approach, additional hardware in the form of MMS 108 computer system connected with communication network 104 is required for storing the data file prior to transmission to the destination. Additionally, message sequence steps are required for both the upload (transmission from wireless device 100 to MMS 108) and download (transmission from MMS 108 to wireless device 102) of the data file.